package com.gsm.service;

import com.gsm.entity.Result;
import com.gsm.po.SysMenu;

import java.util.List;

/**
 * 系统菜单(SysMenu)表服务接口
 *
 * @author wjq
 * @since 2020-11-24 17:25:26
 */
public interface SysMenuService {
    /**
     * 新增数据
     *
     * @param sysMenu 实例对象
     */
    Result insertSysMenu(SysMenu sysMenu);

    /**
     * 通过主键删除数据
     *
     * @param menuId 主键
     */
    Result deleteSysMenuByMenuId(Long menuId);

    /**
     * 修改数据
     *
     * @param sysMenu 实例对象
     */
    Result updateSysMenuByMenuId(SysMenu sysMenu);

    /**
     * 通过ID查询单条数据
     *
     * @param menuId 主键
     */
    Result selectSysMenuByMenuId(Long menuId);

    /**
     * 查询多条数据
     *
     * @param sysMenu 实例对象
     */
    Result selectSysMenuList(SysMenu sysMenu);

    /**
     * 根据用户id查询菜单
     * @param userId
     * @return
     */
    List<SysMenu> selectMenuByUserId(Long userId);

    Result selectSysMenuByRoleId(Long roleId);

    Result updateSysMenuByRoleId(Long roleId, List<Long> menuIds);
}